Release 3.0.0: replace the mandatory method corpus with a microkernel and eight modules - #95
Merged
Conversation
The always-loaded contract now carries only what a run must not get wrong: the trust hierarchy, what a request grants, protected actions, decision ownership, safe continuation, preservation of work the run does not own, delegate-write safety, and what may be claimed as done. Everything else became guidance consulted when the work makes it worth reading. Twenty-three method files become eight. Mandatory routing, the outside read owed on a class of facts, the cold review of a decomposition, the fixed stop after three attempts, oldest-first ordering, the universal glossary, tracker setup on first record, and the item-before-branch rule are removed. Commits are authorized and no longer a condition of finishing. Tracker writes are conditional on the request or the repository's own workflow. Delegates are read-only until isolation is verified. scripts/check.py no longer creates an environment or runs pip install, and check_hosts.py no longer reaches that path by proxy. The compact/resume hook is conditional on SkipHow already governing the request. The dogfood skill no longer tells a maintainer to copy credentials into a scratch home. Kernel 16,797 -> 12,678 bytes; corpus 98,996 -> 58,562 bytes across 23 -> 8 files. Whether the smaller package changes model behavior is UNVERIFIED. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Five review lanes over the microkernel change found defects the implementation had introduced, and two of them were regressions of rules earlier releases added to fix observed failures. The tracker claim rule was carried across the consolidation without the guard that made it safe, so a request only to diagnose one item would have demanded a tracker write again, as it did before 2.8.0. It is now gated on an authorized write and carries its guard. Integration read the delivery path off repository history and instructed reaching a review, where the kernel says shared delivery is never implied. The kernel paragraph on how a protected or human-only ask is worded had been deleted; a receipt had produced it, and it is back. Rules stated in two or three places were cut to one home each, the kernel keeping every invariant. Sentences lost with deleted methods are restored where nothing covered them: aborting or discarding work in an active operation, rewriting shared history or removing a ref you do not own, credential handling during a granted step, confirming an automated closure happened, renewing a wait without another decision pass, and divergence between sources as an anomaly. Method scope lines that covered fewer cases than the kernel's trigger told a run the module did not apply where it did; three are extended. The last mandatory routing line in the kernel is now a condition. Seven claims in the prior art record, and five in the changelog entry, described a package that no longer shipped. Every claim on both was checked against the files and corrected. evals/ records thirteen synthetic cases for the behaviors this release changed, with the events each expects and forbids. Nothing in it has been run, it gates nothing, and every case stands UNVERIFIED. It makes a later receipt reproducible; it is not evidence. Kernel 13,286 bytes against 16,797, corpus 59,537 against 98,996. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements
skiphow-unified-implementation-spec.mdend to end.What changes for a project that installs SkipHow
The agent stops running a process on your project. Installing SkipHow no longer gives a repository a tracker convention, no longer puts an item in front of every review branch, and no longer commits as a condition of finishing. The always-loaded kernel keeps authority, trust, preservation of work the run does not own, delegate safety, and what may be claimed as done. Everything else became guidance the agent consults when the work makes it worth reading.
Projects installed on 2.x will see fewer records written and fewer side effects they did not ask for, which is why this is a major version.
Architecture
Twenty-three method files became eight: product, technical design, diagnosis, verification, delegation, tracked work, integration, and writing for agents. Fourteen were consolidated, five deleted outright. The changelog says where each went.
SKILL.mdreferences/The kernel fell by a fifth while gaining the explicit trust hierarchy, the delegate brief contract, and credential handling that used to sit in a method, so the procedure removed from it is larger than the net figure shows.
Review
Five review lanes ran over the change. Two findings were regressions of rules earlier releases had added to fix observed failures, and both are fixed:
Rules stated in two or three places were cut to one home each, with the kernel keeping every invariant. Sentences lost with deleted methods were restored where nothing covered them, including aborting or discarding work in an active operation and rewriting shared history.
Seven claims in
docs/prior-art.mdand five in the changelog entry described a package that no longer shipped. Every claim on both was checked against the files and corrected.Evidence
evals/records thirteen synthetic cases for the behaviors this release changed, across eight fixtures and three comparison arms, each naming one observable with the events it expects and forbids. Nothing in it has been run. It gates nothing, no pull request needs one, and every case standsnot_run/UNVERIFIED. It makes a later receipt reproducible and comparable; it is not evidence.Whether the compact package produces better model behavior than the one it replaces remains
UNVERIFIED. No receipt compares them.Verification
python scripts/check.py— passedgit diff --check— clean/etc/codex/requirements.tomlmarketplace-source policy, and CI skips isolated installation entirely🤖 Generated with Claude Code